package states;

import handlers.BoundedCamera;
import handlers.GameStateManager;

import com.badlogic.gdx.graphics.OrthographicCamera;
import com.badlogic.gdx.graphics.g2d.SpriteBatch;
import com.me.mygdxgame.Game;

public abstract class GameState {
	protected GameStateManager gsm;
	protected Game game;
	protected SpriteBatch sp;
	protected BoundedCamera cam;
	protected OrthographicCamera HudCam;

	protected GameState(GameStateManager msg) {
		this.gsm = msg;
		 game = msg.game();
		sp = game.getSpriteBacth();
		cam = game.getCamera();
		HudCam = game.getHudCamera();

	}

	public abstract void handleInput();

	public abstract void update(float dt);

	public abstract void render();

	public abstract void dispose();

}
